package pub.xspace.nova.system.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;

import pub.xspace.nova.system.domain.SysResource;

/**
 * 资源管理持久化接口
 * 
 * @author HeJianrong
 */
@Mapper
public interface SysResourceMapper {

	/**
	 * 根据ID查找资源对象
	 * 
	 * @param id 资源ID
	 * @return SysResource 资源对象
	 */
	SysResource selectById(String id);

	/**
	 * 根据用户ID查找关联的资源对象列表
	 * 
	 * @param userId 用户ID
	 * @return List 资源对象列表
	 */
	List<SysResource> selectByUserId(String userId);

	/**
	 * 根据过滤参数查找资源对象列表
	 * 
	 * @param resource 过滤参数
	 * @return List 资源对象列表
	 */
	List<SysResource> selectByParams(SysResource resource);

	/**
	 * 插入资源对象
	 * 
	 * @param resource 需要插入的资源对象
	 * @return int 受影响的记录条数
	 */
	int insert(SysResource resource);

	/**
	 * 根据ID更新资源对象
	 * 
	 * @param resource 需要更新的资源对象
	 * @return int 受影响的记录条数
	 */
	int update(SysResource resource);

	/**
	 * 根据ID删除资源对象
	 * 
	 * @param id 需要删除的资源ID
	 * @return int 受影响的记录条数
	 */
	int deleteById(String id);
}
